In existing computer software systems, a category of software applications sometimes referred to as “presence technology” enables users to view or obtain indications of the on-line status of other users. The on-line status indications provided by existing systems indicate the current availability of remote users for real-time communication sessions. Instant messaging (IM) systems are a popular example of presence technology. Instant messaging systems are typically client-server software, in which a client application program executes on a local user's hardware system, in cooperation with one or more associated server programs, typically executing on one or more remote server computer systems. Many instant messaging systems enable a user to define a “buddy list”, consisting of a list of colleagues, workgroup members, friends, etc., that the user wishes to communicate with via the instant messaging application. An instant messaging communication session or dialog involving two or more users is sometimes referred to as a “chat” session.
Existing instant messaging client software enables a local user to determine if one or more remote users in his or her buddy list are currently engaged in any instant messaging chat sessions. For example, an interface described in U.S. Pat. No. 5,793,365 of Tang et al. provides a local user with activity information regarding another user, such as a user in the local user's workgroup. However, such existing systems are limited in their specific capabilities. Significantly, existing systems do not enable a local user to determine the number of chat sessions another user is currently engaged in, or the other user's activity level in any such current chat sessions. It would be desirable to have access to such detailed current activity information, since knowing that a person is currently highly active in a relatively large number of active chat sessions may be a good indication that it may not be an appropriate time to initiate an instant messaging dialog or discussion with the remote user until their activity level decreases significantly. Additionally, existing systems include no way for a local user to determine whether a remote user has been involved in any chat sessions in the recent past, or with whom the remote user has been chatting with. Such information would also be useful to the local user while using instant messaging or other types of communication systems to contact remote users.
For these reasons and others, it would be desirable to have a system that provides information to a local user regarding the number of chat sessions a remote user is involved in, and indications of the activity levels within such current chat sessions. It would further be desirable for the system to conveniently provide indications of the identities of persons that a remote user has been chatting with, and detailed information regarding chat sessions of that remote user in the recent past.